﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;

namespace JasLib.Interop.Win32
{
    public static partial class SHELL32
    {
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "DllCanUnloadNow", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT DllCanUnloadNow();

        /// <summary>
        /// Before calling this you must initialize DLLVERSIONINFO.cbSize to sizeof(DLLVERSIONINFO).
        /// </summary>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "DllGetVersion", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT DllGetVersion(out DLLVERSIONINFO pdvi);

        /// <summary>
        /// Before calling this you must initialize DLLVERSIONINFO2.info1.cbSize to sizeof(DLLVERSIONINFO2).
        /// </summary>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "DllGetVersion", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT DllGetVersion(out DLLVERSIONINFO2 pdvi);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "DragAcceptFiles", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void DragAcceptFiles([In] HWND hWnd, [In, MarshalAs(UnmanagedType.Bool)] bool fAccept);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "DragDropQueryPoint", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool DragDropQueryPoint(HDROP hDrop, out POINT lppt);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "DragFinish", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void DragFinish([In] HDROP hDrop);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "DragQueryFileW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool DragQueryFile([In] HDROP hDrop, [In] uint iFile, [Out] StringBuilder lpszFile, [In] uint cch);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "GetCurrentProcessExplicitAppUserModelID", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT GetCurrentProcessExplicitAppUserModelID(out IntPtr AppID);

        /// <summary>
        /// Safe overloaded wrapper for the Win32 GetCurrentProcessExplicitAppUserModelID function that throws an exception on an error.
        /// </summary>
        public static string GetCurrentProcessExplicitAppUserModelID()
        {
            IntPtr pszAppId;
            HRESULT hResult = GetCurrentProcessExplicitAppUserModelID(out pszAppId);
            if (hResult.FAILED())
                throw hResult.ToCOMException();

            string strAppId;
            try
            {
                strAppId = Marshal.PtrToStringUni(pszAppId);
            }
            finally
            {
                OLE32.CoTaskMemFree(pszAppId);
            }
            return strAppId;
        }

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "ILClone", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern LPITEMIDLIST ILClone(LPITEMIDLIST pidl);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "ILClone", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern LPITEMIDLIST ILClone(UINT_PTR pidl);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "ILCombine", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern LPITEMIDLIST ILCombine([In] UINT_PTR pidl1, [In] UINT_PTR pidl2);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "RealDriveType", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern DriveType RealDriveType(int iDrive, bool fOKToHitNet = false);

        /// <summary>
        /// Undocumented.
        /// </summary>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "#181", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void RegisterShellHookWindow(HWND hwnd, RegisterShellHookWindowCode code = RegisterShellHookWindowCode.RSH_TASKMAN);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "RestartDialog", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern int RestartDialog(HWND hParent, [In] string pszPrompt, [In] ExitWindowsFlags dwFlags);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "RestartDialogEx", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern int RestartDialogEx(HWND hParent, [In] string pszPrompt, [In] ExitWindowsFlags dwFlags, [In] ShutdownReason dwReasonCodes);

        /// <summary>
        /// Undocumented. This function automatically runs the process without reporting it back first.
        /// </summary>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "#61", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void RunDlg(HWND hwnd, HICON hIcon, string lpstrDirectory, string lpstrTitle, string lpstrDescription, RunDlgFlags uiFlags);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SetCurrentProcessExplicitAppUserModelID", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT SetCurrentProcessExplicitAppUserModelID([In, MarshalAs(UnmanagedType.LPWStr)] string AppID);

        /// <param name="uFlags">This MUST be set to SHARD_PIDL.</param>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHAddToRecentDocs", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void SHAddToRecentDocs(SHARD uFlags, [In] LPITEMIDLIST pv);

        /// <param name="uFlags">This MUST be set to SHARD_PATHW.</param>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHAddToRecentDocs", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void SHAddToRecentDocs(SHARD uFlags, [In] string pv);

        /// <param name="uFlags">This MUST be set to SHARD_LINK.</param>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHAddToRecentDocs", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void SHAddToRecentDocs(SHARD uFlags, [In] IShellLinkW pv);

        /// <param name="uFlags">This MUST be set to SHARD_APPIDINFO.</param>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHAddToRecentDocs", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void SHAddToRecentDocs(SHARD uFlags, [In] ref SHARDAPPIDINFO pv);

        /// <param name="uFlags">This MUST be set to SHARD_APPIDINFOLIST.</param>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHAddToRecentDocs", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void SHAddToRecentDocs(SHARD uFlags, [In] ref SHARDAPPIDINFOIDLIST pv);

        /// <param name="uFlags">This MUST be set to SHARD_APPIDINFOLINK.</param>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHAddToRecentDocs", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void SHAddToRecentDocs(SHARD uFlags, [In] ref SHARDAPPIDINFOLINK pv);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHBrowseForFolderW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern LPITEMIDLIST SHBrowseForFolder([In] ref BROWSEINFO lpbi);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHChangeNotification_Lock", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HANDLE SHChangeNotification_Lock(HWND hChange, uint dwProcId, out IntPtr pppidl, out uint plEvent);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHChangeNotification_Unlock", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool SHChangeNotification_Unlock(HANDLE hLock);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHChangeNotify", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern void SHChangeNotify(SHCNE wEventId, SHCNF uFlags, IntPtr dwItem1 = default(IntPtr), IntPtr dwItem2 = default(IntPtr));

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHChangeNotifyDeregister", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool SHChangeNotifyDeregister(uint ulID);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHChangeNotifyRegister", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern uint SHChangeNotifyRegister(
            HWND hwnd,
            SHCNRF fSources,
            SHCNE fEvents,
            WindowMessageId wMsg,
            int cEntries,
            [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 4)] SHChangeNotifyEntry[] pshcne);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHChangeNotifyRegisterThread", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern uint SHChangeNotifyRegisterThread(SCNRT_STATUS status);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHCreateDirectory", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern Win32ErrorCode SHCreateDirectory(HWND hwnd, [In, MarshalAs(UnmanagedType.LPWStr)] string pszPath);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHCreateDirectoryEx", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi)]
        public static extern Win32ErrorCode SHCreateDirectoryEx(HWND hwnd, [In, MarshalAs(UnmanagedType.LPWStr)] string pszPath, [In] ref SECURITY_ATTRIBUTES psa);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHCreateItemFromIDList", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi)]
        public static extern HRESULT SHCreateItemFromIDList(
            LPITEMIDLIST pidl,
            [In, MarshalAs(UnmanagedType.LPStruct)] Guid riid,
            [MarshalAs(UnmanagedType.Interface)] out object ppvItem);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHCreateItemInKnownFolder", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi)]
        public static extern HRESULT SHCreateItemInKnownFolder(
            [In, MarshalAs(UnmanagedType.LPStruct)] Guid kfid,
            KNOWN_FOLDER_FLAG dwKFFlags,
            string pszItem,
            [In, MarshalAs(UnmanagedType.LPStruct)] Guid riid,
            [Out, MarshalAs(UnmanagedType.Interface)] out object ppvItem);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHCreateItemWithParent", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi)]
        public static extern HRESULT SHCreateItemWithParent(
            LPITEMIDLIST pidlParent,
            IShellFolder psfParent,
            LPITEMIDLIST pidl,
            [In, MarshalAs(UnmanagedType.LPStruct)] Guid riid,
            [MarshalAs(UnmanagedType.Interface)] out object ppvItem);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "Shell_NotifyIconGetRect", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi)]
        public static extern HRESULT Shell_NotifyIconGetRect(
            [In] ref NOTIFYICONIDENTIFIER identifier,
            [Out] out RECT iconLocation);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "ShellAboutW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool ShellAbout(
            [In] HWND hWnd = default(HWND),
            [In, MarshalAs(UnmanagedType.LPWStr)] string szApp = null,
            [In, MarshalAs(UnmanagedType.LPWStr)] string szOtherStuff = null,
            [In] HICON hIcon = default(HICON));

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHEmptyRecycleBinW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT SHEmptyRecycleBin(
            HWND hwnd,
            [In, MarshalAs(UnmanagedType.LPWStr)] string pszRootPath = null,
            SHERB dwFlags = SHERB.SHERB_NOCONFIRMATION);

        /// <summary>
        /// This function returns a historically volatile internal error code and does not use SetLastError().
        /// </summary>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHFileOperationW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi)]
        public static extern int SHFileOperation([In] ref SHFILEOPSTRUCT lpFileOp);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHGetDesktopFolder", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi)]
        public static extern HRESULT SHGetDesktopFolder(out IShellFolder ppshf);

        /// <summary>
        /// Convenient overloaded wrapper for the Win32 SHGetDesktopFolder function that throws an exception on an error.
        /// </summary>
        public static IShellFolder SHGetDesktopFolder()
        {
            IShellFolder shellFolder;
            HRESULT hResult = SHGetDesktopFolder(out shellFolder);
            if (hResult.FAILED())
                throw hResult.ToCOMException();
            return shellFolder;
        }

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHGetFolderPathW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT SHGetFolderPath(HWND hwndOwner, CSIDL nFolder, HANDLE hToken, SHGFP_TYPE dwFlags, [Out] StringBuilder pszPath);

        /// <summary>
        /// Convenient overloaded wrapper for the Win32 SHGetFolderPath function that throws an exception on any error.
        /// </summary>
        public static string SHGetFolderPath(HWND hwndOwner, CSIDL nFolder, HANDLE hToken, SHGFP_TYPE dwFlags)
        {
            StringBuilder sb = new StringBuilder(Constants.MAX_PATH);
            HRESULT hResult = SHGetFolderPath(hwndOwner, nFolder, hToken, dwFlags, sb);
            hResult.TryThrowCOMException();
            return sb.ToString();
        }

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHGetPathFromIDListW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool SHGetPathFromIDList(LPITEMIDLIST pidl, [Out] StringBuilder pszPath);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHGetSpecialFolderLocation", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT SHGetSpecialFolderLocation(
            [In] HWND hwndOwner,
            [In] CSIDL nFolder,
            [Out] out LPITEMIDLIST ppidl);

        /// <summary>
        /// Undocumented.
        /// </summary>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "#209", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern UINT_PTR SHLockShared(HANDLE hMem, uint pid);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHParseDisplayName", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT SHParseDisplayName(string pszName, IBindCtx pbc, out LPITEMIDLIST ppidl, SFGAOF sfgaoIn, out SFGAOF psfgaoOut);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHQueryRecycleBinW", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT SHQueryRecycleBin(
            [In, MarshalAs(UnmanagedType.LPWStr)] string pszRootPath,
            [In, Out] ref SHQUERYRBINFO pSHQueryRBInfo);

        /// <summary>
        /// Undocumented.
        /// </summary>
        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "#20A", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern bool SHUnlockShared(UINT_PTR pv);

        [DllImport(Constants.ModuleNames.SHELL32, EntryPoint = "SHUpdateRecycleBinIcon", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Winapi, SetLastError = true)]
        public static extern HRESULT SHUpdateRecycleBinIcon();
    }
}

/******
208    0 0023F718 AppCompat_RunDLLW
226    1 0002CF68 AssocCreateForClasses
228    2 000867F0 AssocGetDetailsOfPropKey
701    3 002420FC CDefFolderMenu_Create2
 83    4 00242B4C CIDLData_CreateFromIDArray
229    5 00243888 CheckEscapesW
238    6 0002157C CommandLineToArgvW
255    7 0024952C Control_RunDLL
263    8 0024952C Control_RunDLLA
267    9 002495C0 Control_RunDLLAsUserW
268    A 000C9030 Control_RunDLLW
129    B 000993BC DAD_AutoScroll
131    C 000A6810 DAD_DragEnterEx
22    D 0024E4C8 DAD_DragEnterEx2
132    E 0024E624 DAD_DragLeave
134    F 0024E580 DAD_DragMove
136   10 000A6810 DAD_SetDragImage
137   11 000A6810 DAD_ShowDragImage
269   12 000A6810 DllCanUnloadNow
271   13 000A2FE8 DllGetClassObject
272   14 003FE094 DllGetVersion
273   15 002510B0 DllInstall
274   16 000993BC DllRegisterServer
275   17 000993BC DllUnregisterServer
276   18 002182E0 DoEnvironmentSubstA
277   19 00017418 DoEnvironmentSubstW
278   1A 000F2B04 DragAcceptFiles
279   1B 00221988 DragFinish
280   1C 00221964 DragQueryFile
281   1D 00221964 DragQueryFileA
282   1E 0022167C DragQueryFileAorW
283   1F 00221944 DragQueryFileW
284   20 00221604 DragQueryPoint
64   21 000714D8 DriveType
285   22 00217CB4 DuplicateIcon
286   23 00218120 ExtractAssociatedIconA
287   24 00218030 ExtractAssociatedIconExA
288   25 00217D9C ExtractAssociatedIconExW
289   26 00217B80 ExtractAssociatedIconW
290   27 00217D20 ExtractIconA
291   28 00217BF0 ExtractIconEx
292   29 00217BF0 ExtractIconExA
293   2A 0010B728 ExtractIconExW
294   2B 000F5C98 ExtractIconW
295   2C 00259630 FindExecutableA
296   2D 00001080 FindExecutableW
297   2E 00080B9C FreeIconList
298   2F 00248B30 GetCurrentProcessExplicitAppUserModelID
63   30 0025A7D4 GetFileNameFromBrowse
154   31 0025AB50 ILAppendID
18   32 0009A9E0 ILClone
19   33 0009D630 ILCloneFirst
25   34 0009A940 ILCombine
157   35 0025AD58 ILCreateFromPath
189   36 0025ADB0 ILCreateFromPathA
190   37 0025AD58 ILCreateFromPathW
24   38 00182C2C ILFindChild
16   39 0009BAD0 ILFindLastID
155   3A 00099F40 ILFree
153   3B 0004AED8 ILGetNext
152   3C 0009B6A0 ILGetSize
21   3D 0009F890 ILIsEqual
23   3E 001A6470 ILIsParent
846   3F 00064520 ILLoadFromStreamEx
17   40 0009D760 ILRemoveLastID
27   41 0004BD50 ILSaveToStream
299   42 0025B2D4 InitNetworkAddressControl
300   43 000993BC InternalExtractIconListA
301   44 000993BC InternalExtractIconListW
119   45 00021990 IsLFNDrive
41   46 00243194 IsLFNDriveA
42   47 00021990 IsLFNDriveW
66   48 0009FB14 IsNetDrive
680   49 0025D290 IsUserAnAdmin
302   4A 002221D0 LaunchMSHelp_RunDLLW
81   4B 00225B78 OpenAs_RunDLL
125   4C 00225B78 OpenAs_RunDLLA
133   4D 00225C4C OpenAs_RunDLLW
85   4E 00033260 OpenRegStream
303   4F 00399B84 Options_RunDLL
304   50 00399B84 Options_RunDLLA
305   51 000B9FAC Options_RunDLLW
171   52 00109C90 PathCleanupSpec
92   53 002433DC PathGetShortPath
43   54 002432F0 PathIsExe
240   55 00243558 PathIsSlowA
239   56 0013359C PathIsSlowW
47   57 002433B0 PathMakeUniqueName
49   58 002432D4 PathQualify
51   59 0001A214 PathResolve
75   5A 000D8668 PathYetAnotherMakeUniqueName
62   5B 0022079C PickIconDlg
13   5C 002208AC PifMgr_CloseProperties
10   5D 000993BC PifMgr_GetProperties
9   5E 000993BC PifMgr_OpenProperties
11   5F 000993BC PifMgr_SetProperties
135   60 0022722C PrepareDiscForBurnRunDllW
138   61 0023247C PrintersGetCommand_RunDLL
139   62 0023247C PrintersGetCommand_RunDLLA
150   63 00232558 PrintersGetCommand_RunDLLW
654   64 00118830 ReadCabinetState
524   65 000992E8 RealDriveType
306   66 0025EC70 RealShellExecuteA
307   67 0025EC70 RealShellExecuteExA
308   68 0025EC70 RealShellExecuteExW
309   69 0025EC70 RealShellExecuteW
310   6A 000A77E4 RegenerateUserEnvironment
59   6B 0024EDA0 RestartDialog
730   6C 0024EDB0 RestartDialogEx
311   6D 00222340 RunAsNewUser_RunDLLW
312   6E 000D9B4C SHAddDefaultPropertiesByExt
167   6F 00260D20 SHAddFromPropSheetExtArray
313   70 000CF510 SHAddToRecentDocs
196   71 00021DB0 SHAlloc
314   72 00019600 SHAppBarMessage
315   73 0011EEDC SHAssocEnumHandlers
316   74 002634B0 SHAssocEnumHandlersForProtocolByApplication
317   75 0009F6C4 SHBindToFolderIDListParent
318   76 0009D84C SHBindToFolderIDListParentEx
319   77 0009B9F0 SHBindToObject
320   78 0008A8D0 SHBindToParent
321   79 002639B8 SHBrowseForFolder
322   7A 002639B8 SHBrowseForFolderA
323   7B 002637B8 SHBrowseForFolderW
147   7C 000879F0 SHCLSIDFromString
644   7D 00097188 SHChangeNotification_Lock
645   7E 00097270 SHChangeNotification_Unlock
324   7F 0005BEA0 SHChangeNotify
4   80 0008F918 SHChangeNotifyDeregister
2   81 0008EF60 SHChangeNotifyRegister
325   82 0004B2F4 SHChangeNotifyRegisterThread
326   83 0005C420 SHChangeNotifySuspendResume
89   84 00021D44 SHCloneSpecialIDList
102   85 00099104 SHCoCreateInstance
327   86 000E24F0 SHCreateAssociationRegistration
328   87 001878D0 SHCreateDataObject
329   88 0004FBA8 SHCreateDefaultContextMenu
330   89 000709A0 SHCreateDefaultExtractIcon
331   8A 00260A2C SHCreateDefaultPropertiesOp
165   8B 000F6170 SHCreateDirectory
332   8C 0026D55C SHCreateDirectoryExA
333   8D 000A3AE8 SHCreateDirectoryExW
743   8E 0025CEE0 SHCreateFileExtractIconW
334   8F 0009F630 SHCreateItemFromIDList
335   90 000587D4 SHCreateItemFromParsingName
336   91 0019410C SHCreateItemFromRelativeName
337   92 000D88CC SHCreateItemInKnownFolder
338   93 00087430 SHCreateItemWithParent
339   94 000E21D4 SHCreateLocalServerRunDll
340   95 0025E2D8 SHCreateProcessAsUserW
168   96 000C8C40 SHCreatePropSheetExtArray
341   97 002790A4 SHCreateQueryCancelAutoPlayMoniker
256   98 000363F0 SHCreateShellFolderView
174   99 0028B578 SHCreateShellFolderViewEx
342   9A 000F9BA4 SHCreateShellItem
343   9B 00031B20 SHCreateShellItemArray
344   9C 00050BFC SHCreateShellItemArrayFromDataObject
345   9D 0006863C SHCreateShellItemArrayFromIDLists
346   9E 00031BE0 SHCreateShellItemArrayFromShellItem
74   9F 00216EA0 SHCreateStdEnumFmtEtc
3   A0 00258C6C SHDefExtractIconA
6   A1 0006AC7C SHDefExtractIconW
169   A2 000C8D10 SHDestroyPropSheetExtArray
88   A3 0024E820 SHDoDragDrop
347   A4 00290794 SHEmptyRecycleBinA
348   A5 00290730 SHEmptyRecycleBinW
349   A6 00010DE4 SHEnableServiceObject
350   A7 00235780 SHEnumerateUnreadMailAccountsW
351   A8 00067D5C SHEvaluateSystemCommandTemplate
352   A9 00217C68 SHExtractIconsW
353   AA 002719B8 SHFileOperation
354   AB 002719B8 SHFileOperationA
355   AC 00058F6C SHFileOperationW
90   AD 00237CEC SHFindFiles
149   AE 00291600 SHFind_InitMenuPopup
526   AF 002916AC SHFlushSFCache
356   B0 0023DC80 SHFormatDrive
195   B1 00099F40 SHFree
357   B2 0026D4C0 SHFreeNameMappings
750   B3 0018717C SHGetAttributesFromDataObject
358   B4 0025B8D0 SHGetDataFromIDListA
359   B5 0003A11C SHGetDataFromIDListW
360   B6 00028660 SHGetDesktopFolder
361   B7 0025D0B8 SHGetDiskFreeSpaceA
362   B8 0025D0B8 SHGetDiskFreeSpaceExA
363   B9 0025D0A8 SHGetDiskFreeSpaceExW
364   BA 002521F0 SHGetDriveMedia
365   BB 001A2500 SHGetFileInfo
366   BC 001A2500 SHGetFileInfoA
367   BD 001A2410 SHGetFileInfoW
368   BE 0008A274 SHGetFolderLocation
369   BF 002695DC SHGetFolderPathA
370   C0 00269870 SHGetFolderPathAndSubDirA
371   C1 0003FFBC SHGetFolderPathAndSubDirW
372   C2 00083AF4 SHGetFolderPathEx
373   C3 00083BA4 SHGetFolderPathW
374   C4 0009B784 SHGetIDListFromObject
375   C5 00297EA8 SHGetIconOverlayIndexA
376   C6 00297DD4 SHGetIconOverlayIndexW
727   C7 0009F700 SHGetImageList
377   C8 0004ADC0 SHGetInstanceExplorer
378   C9 0004E150 SHGetItemFromDataObject
379   CA 000531EC SHGetItemFromObject
380   CB 000714AC SHGetKnownFolderIDList
381   CC 0008E350 SHGetKnownFolderItem
382   CD 000A4CE4 SHGetKnownFolderPath
383   CE 0025CC30 SHGetLocalizedName
384   CF 00019928 SHGetMalloc
385   D0 0002DC10 SHGetNameFromIDList
386   D1 0025C35C SHGetNewLinkInfo
179   D2 0025C35C SHGetNewLinkInfoA
180   D3 0025C32C SHGetNewLinkInfoW
387   D4 00234980 SHGetPathFromIDList
388   D5 00234980 SHGetPathFromIDListA
389   D6 0008C880 SHGetPathFromIDListEx
390   D7 00093C64 SHGetPathFromIDListW
391   D8 000A1680 SHGetPropertyStoreForWindow
392   D9 0025CB28 SHGetPropertyStoreFromIDList
393   DA 0025CBB0 SHGetPropertyStoreFromParsingName
98   DB 00234DA4 SHGetRealIDL
709   DC 00120270 SHGetSetFolderCustomSettings
68   DD 0006D194 SHGetSetSettings
394   DE 002984FC SHGetSettings
395   DF 00022904 SHGetSpecialFolderLocation
396   E0 00269830 SHGetSpecialFolderPathA
397   E1 000198F0 SHGetSpecialFolderPathW
398   E2 0019BFFC SHGetStockIconInfo
399   E3 001826B4 SHGetTemporaryPropertyForItem
400   E4 00235864 SHGetUnreadMailCountW
193   E5 00269468 SHHandleUpdateImage
199   E6 00232C04 SHHelpShortcuts_RunDLL
206   E7 00232C04 SHHelpShortcuts_RunDLLA
207   E8 00232CA8 SHHelpShortcuts_RunDLLW
28   E9 00199FA0 SHILCreateFromPath
401   EA 002329D8 SHInvokePrinterCommandA
402   EB 002327F0 SHInvokePrinterCommandW
403   EC 0023761C SHIsFileAvailableOffline
747   ED 00299630 SHLimitInputEdit
404   EE 00077C0C SHLoadInProc
405   EF 0029C53C SHLoadNonloadedIconOverlayIdentifiers
77   F0 0014F894 SHMapPIDLToSystemImageListIndex
716   F1 0029E7D0 SHMultiFileProperties
178   F2 00232CB4 SHObjectProperties
406   F3 0025C9F0 SHOpenFolderAndSelectItems
80   F4 0029E254 SHOpenPropSheetW
407   F5 00225AC0 SHOpenWithDialog
408   F6 00084570 SHParseDisplayName
409   F7 0029FAB0 SHPathPrepareForWriteA
410   F8 0005A754 SHPathPrepareForWriteW
685   F9 000A6D48 SHPropStgCreate
688   FA 000A6BA0 SHPropStgReadMultiple
689   FB 003FEAC8 SHPropStgWriteMultiple
411   FC 00290698 SHQueryRecycleBinA
412   FD 00290588 SHQueryRecycleBinW
413   FE 0000B320 SHQueryUserNotificationState
414   FF 0025CD20 SHRemoveLocalizedName
170  100 00260DA0 SHReplaceFromPropSheetExtArray
415  101 0013AB54 SHResolveLibrary
100  102 00082328 SHRestricted
416  103 00260B48 SHSetDefaultProperties
231  104 002697B0 SHSetFolderPathA
232  105 0026966C SHSetFolderPathW
176  106 00017ED0 SHSetInstanceExplorer
417  107 003AF260 SHSetKnownFolderPath
418  108 000F5598 SHSetLocalizedName
419  109 0019EC40 SHSetTemporaryPropertyForItem
420  10A 00235AA8 SHSetUnreadMailCountW
73  10B 0028B4B0 SHShellFolderView_Message
421  10C 003BE420 SHShowManageLibraryUI
162  10D 0010AA24 SHSimpleIDListFromPath
14  10E 0025D870 SHStartNetConnectionDialogW
245  10F 0005726C SHTestTokenMembership
191  110 00269330 SHUpdateImageA
192  111 0026939C SHUpdateImageW
422  112 0000E9F0 SHUpdateRecycleBinIcon
173  113 0000DF00 SHValidateUNC
423  114 000D8730 SetCurrentProcessExplicitAppUserModelID
424  115 00220DFC SheChangeDirA
425  116 00220E70 SheChangeDirExW
426  117 00220A40 SheGetDirA
427  118 00221324 SheSetCurDrive
428  119 002A11B0 ShellAboutA
429  11A 000B9388 ShellAboutW
430  11B 0025E604 ShellExec_RunDLL
431  11C 0025E604 ShellExec_RunDLLA
432  11D 0025E4BC ShellExec_RunDLLW
433  11E 0025EC80 ShellExecuteA
434  11F 0025EB80 ShellExecuteEx
435  120 0025EB80 ShellExecuteExA
436  121 00027C70 ShellExecuteExW
437  122 0001983C ShellExecuteW
438  123 000993BC ShellHookProc
183  124          ShellMessageBoxA (forwarded to shlwapi.ShellMessageBoxA)
182  125          ShellMessageBoxW (forwarded to shlwapi.ShellMessageBoxW)
72  126 00258D70 Shell_GetCachedImageIndex
439  127 00258CFC Shell_GetCachedImageIndexA
440  128 000784E4 Shell_GetCachedImageIndexW
71  129 0014F758 Shell_GetImageLists
67  12A 00052340 Shell_MergeMenus
441  12B 00260E2C Shell_NotifyIcon
442  12C 00260E2C Shell_NotifyIconA
443  12D 000B4094 Shell_NotifyIconGetRect
444  12E 0001DC48 Shell_NotifyIconW
103  12F 00151BEC SignalFileOpen
682  130 002A21C0 StgMakeUniqueName
445  131 00421B94 StrChrA
446  132 00421BA0 StrChrIA
447  133 00421BAC StrChrIW
448  134 00140228 StrChrW
449  135 00421BB8 StrCmpNA
450  136 00421BD0 StrCmpNIA
451  137 000AAB48 StrCmpNIW
452  138 00421BDC StrCmpNW
453  139 0021F884 StrNCmpA
454  13A 0021F9E8 StrNCmpIA
455  13B 0021F928 StrNCmpIW
456  13C 0021F7A4 StrNCmpW
457  13D 00421BE8 StrRChrA
458  13E 00421C00 StrRChrIA
459  13F 00421C0C StrRChrIW
460  140 00421C18 StrRChrW
461  141 0021FB68 StrRStrA
462  142 00421C24 StrRStrIA
463  143 00421C30 StrRStrIW
464  144 0021FA8C StrRStrW
465  145 00421C3C StrStrA
466  146 00421C48 StrStrIA
467  147 0010968C StrStrIW
468  148 00421C60 StrStrW
469  149 0025E2F4 WOWShellExecute
470  14A 002514E8 WaitForExplorerRestartW
164  14B 0021FCC8 Win32DeleteFile
652  14C 000B2480 WriteCabinetState
5               [NONAME] (forwarded to SHUNIMPL.#35)
7               [NONAME] (forwarded to SHUNIMPL.#192)
8               [NONAME] (forwarded to SHUNIMPL.#193)
12      0025D94C [NONAME]
15      0025AEE8 [NONAME]
20      0009A9E0 [NONAME]
26               [NONAME] (forwarded to SHUNIMPL.#36)
29      002437CC [NONAME]
30               [NONAME] (forwarded to shlwapi.PathBuildRootW)
31               [NONAME] (forwarded to shlwapi.PathFindExtensionW)
32               [NONAME] (forwarded to shlwapi.PathAddBackslashW)
33               [NONAME] (forwarded to shlwapi.PathRemoveBlanksW)
34               [NONAME] (forwarded to shlwapi.PathFindFileNameW)
35      00243794 [NONAME]
36      00243840 [NONAME]
37               [NONAME] (forwarded to shlwapi.PathCombineW)
38               [NONAME] (forwarded to shlwapi.PathStripPathW)
39               [NONAME] (forwarded to shlwapi.PathIsUNCW)
40               [NONAME] (forwarded to shlwapi.PathIsRelativeW)
44      002495A0 [NONAME]45      00243804 [NONAME]
46               [NONAME] (forwarded to shlwapi.PathMatchSpecW)
48               [NONAME] (forwarded to shlwapi.PathSetDlgItemPathW)
50               [NONAME] (forwarded to shlwapi.PathStripToRootW)
52               [NONAME] (forwarded to shlwapi.PathGetArgsW)
53               [NONAME] (forwarded to SHUNIMPL.#388)
54      0024F39C [NONAME]
55               [NONAME] (forwarded to shlwapi.PathQuoteSpacesW)
56               [NONAME] (forwarded to shlwapi.PathUnquoteSpacesW)
57               [NONAME] (forwarded to shlwapi.PathGetDriveNumberW)
58      00233FF8 [NONAME]
60      0024F350 [NONAME]
61      000CB4E0 [NONAME]
65      00080B9C [NONAME]
69      0025D554 [NONAME]
70      00187EE8 [NONAME]
76      00221478 [NONAME]
78               [NONAME] (forwarded to SHUNIMPL.#37)
79               [NONAME] (forwarded to SHUNIMPL.#38)
82               [NONAME] (forwarded to SHUNIMPL.#39)
84               [NONAME] (forwarded to SHUNIMPL.#40)
86               [NONAME] (forwarded to SHUNIMPL.#41)
87               [NONAME] (forwarded to SHUNIMPL.#42)
91      00237B20 [NONAME]
93      000A38AC [NONAME]
94      0000B020 [NONAME]
95      000949C0 [NONAME]
96               [NONAME] (forwarded to SHUNIMPL.#43)
97      002596F8 [NONAME]
99      00149CA0 [NONAME]
101               [NONAME] (forwarded to SHUNIMPL.#1)
104               [NONAME] (forwarded to SHUNIMPL.#2)
105               [NONAME] (forwarded to SHUNIMPL.#3)
106               [NONAME] (forwarded to SHUNIMPL.#4)
107               [NONAME] (forwarded to SHUNIMPL.#5)
108               [NONAME] (forwarded to SHUNIMPL.#6)
109               [NONAME] (forwarded to SHUNIMPL.#7)
110               [NONAME] (forwarded to SHUNIMPL.#8)
111               [NONAME] (forwarded to SHUNIMPL.#9)
112               [NONAME] (forwarded to SHUNIMPL.#10)
113               [NONAME] (forwarded to SHUNIMPL.#11)
114               [NONAME] (forwarded to SHUNIMPL.#12)
115               [NONAME] (forwarded to SHUNIMPL.#13)
116               [NONAME] (forwarded to SHUNIMPL.#14)
117               [NONAME] (forwarded to SHUNIMPL.#15)
118               [NONAME] (forwarded to SHUNIMPL.#16)
120               [NONAME] (forwarded to SHUNIMPL.#17)
121               [NONAME] (forwarded to SHUNIMPL.#44)
122               [NONAME] (forwarded to SHUNIMPL.#45)
123               [NONAME] (forwarded to SHUNIMPL.#46)
124               [NONAME] (forwarded to SHUNIMPL.#18)
126               [NONAME] (forwarded to SHUNIMPL.#47)
127               [NONAME] (forwarded to SHUNIMPL.#371)
128      000A2FE8 [NONAME]
130               [NONAME] (forwarded to SHUNIMPL.#48)
140               [NONAME] (forwarded to SHUNIMPL.#19)
141               [NONAME] (forwarded to SHUNIMPL.#20)
142               [NONAME] (forwarded to SHUNIMPL.#21)
143               [NONAME] (forwarded to SHUNIMPL.#22)
144               [NONAME] (forwarded to SHUNIMPL.#23)
145               [NONAME] (forwarded to shlwapi.PathFindOnPathW)
146               [NONAME] (forwarded to SHUNIMPL.#49)
148               [NONAME] (forwarded to SHUNIMPL.#50)
151               [NONAME] (forwarded to SHUNIMPL.#51)
156      00099F40 [NONAME]
158               [NONAME] (forwarded to SHUNIMPL.#389)
159               [NONAME] (forwarded to shlwapi.PathIsDirectoryW)
160      0025D6D0 [NONAME]
161               [NONAME] (forwarded to SHUNIMPL.#214)
163               [NONAME] (forwarded to SHUNIMPL.#52)
166               [NONAME] (forwarded to SHUNIMPL.#53)
172      0025C8C0 [NONAME]
175      000198F0 [NONAME]
177               [NONAME] (forwarded to SHUNIMPL.#54)
181      00001FE0 [NONAME]
184      000993BC [NONAME]
185               [NONAME] (forwarded to SHUNIMPL.#390)
186      0025AE14 [NONAME]
187               [NONAME] (forwarded to SHUNIMPL.#235)
188      0000124C [NONAME]
194      000C8C50 [NONAME]
197               [NONAME] (forwarded to SHUNIMPL.#55)
198               [NONAME] (forwarded to SHUNIMPL.#56)
200      00006C84 [NONAME]
201      00007700 [NONAME]
202               [NONAME] (forwarded to SHUNIMPL.#57)
203      00233D78 [NONAME]
204      00233D8C [NONAME]
205      0023208C [NONAME]
209      00233DA4 [NONAME]
210      00233FCC [NONAME]
211      0005BBF0 [NONAME]
212      00232268 [NONAME]
213      00231E28 [NONAME]
214      00231F30 [NONAME]
215      0025D870 [NONAME]
216               [NONAME] (forwarded to SHUNIMPL.#24)
217               [NONAME] (forwarded to SHUNIMPL.#25)
218               [NONAME] (forwarded to SHUNIMPL.#26)
219               [NONAME] (forwarded to SHUNIMPL.#27)
220               [NONAME] (forwarded to SHUNIMPL.#28)
221               [NONAME] (forwarded to SHUNIMPL.#29)
222               [NONAME] (forwarded to SHUNIMPL.#30)
223               [NONAME] (forwarded to SHUNIMPL.#31)
224               [NONAME] (forwarded to SHUNIMPL.#32)
225               [NONAME] (forwarded to SHUNIMPL.#33)
227               [NONAME] (forwarded to SHUNIMPL.#34)
230               [NONAME] (forwarded to SHUNIMPL.#372)
233               [NONAME] (forwarded to SHUNIMPL.#58)
234               [NONAME] (forwarded to SHUNIMPL.#59)
235               [NONAME] (forwarded to SHUNIMPL.#212)
236      0025D350 [NONAME]
237      000B7330 [NONAME]
241      0006D680 [NONAME]
242               [NONAME] (forwarded to SHUNIMPL.#373)
243               [NONAME] (forwarded to SHUNIMPL.#374)
244      00020B44 [NONAME]
246               [NONAME] (forwarded to SHUNIMPL.#375)
247               [NONAME] (forwarded to SHUNIMPL.#376)
248               [NONAME] (forwarded to SHUNIMPL.#377)
249               [NONAME] (forwarded to shlwapi.PathParseIconLocationW)
250               [NONAME] (forwarded to shlwapi.PathRemoveExtensionW)
251               [NONAME] (forwarded to shlwapi.PathRemoveArgsW)
252               [NONAME] (forwarded to shlwapi.PathIsURLW)
253               [NONAME] (forwarded to SHUNIMPL.#378)
254      0024F3B0 [NONAME]
257      000993BC [NONAME]
258      001A2740 [NONAME]
259      000A6810 [NONAME]
260      00249EC8 [NONAME]
261      00293A08 [NONAME]
262      00293BF8 [NONAME]
264      00249EF4 [NONAME]
265      000CB910 [NONAME]
266      00259A08 [NONAME]
270      00292604 [NONAME]
520               [NONAME] (forwarded to SHUNIMPL.#60)
521               [NONAME] (forwarded to SHUNIMPL.#61)
522               [NONAME] (forwarded to SHUNIMPL.#62)
523               [NONAME] (forwarded to SHUNIMPL.#63)
525               [NONAME] (forwarded to SHUNIMPL.#234)
640               [NONAME] (forwarded to SHUNIMPL.#64)
641               [NONAME] (forwarded to SHUNIMPL.#65)
643               [NONAME] (forwarded to SHUNIMPL.#66)
646               [NONAME] (forwarded to SHUNIMPL.#67)
648               [NONAME] (forwarded to SHUNIMPL.#379)
650               [NONAME] (forwarded to shlwapi.PathIsSameRootW)
651      00217260 [NONAME]
653               [NONAME] (forwarded to SHUNIMPL.#68)
660      0002824C [NONAME]
681      0014E684 [NONAME]
683      0029FB24 [NONAME]
684      0029FB24 [NONAME]
690      003FE560 [NONAME]
691               [NONAME] (forwarded to SHUNIMPL.#216)
700               [NONAME] (forwarded to SHUNIMPL.#380)
702      000512C0 [NONAME]
703               [NONAME] (forwarded to SHLWAPI.#269)
704               [NONAME] (forwarded to SHLWAPI.#270)
707               [NONAME] (forwarded to SHUNIMPL.#69)
708               [NONAME] (forwarded to SHUNIMPL.#70)
711      000FD930 [NONAME]
712               [NONAME] (forwarded to SHUNIMPL.#71)
713      002431F0 [NONAME]
714      00104B5C [NONAME]
715               [NONAME] (forwarded to SHUNIMPL.#191)
719      00093B1C [NONAME]
720               [NONAME] (forwarded to SHUNIMPL.#72)
721               [NONAME] (forwarded to SHUNIMPL.#73)
722               [NONAME] (forwarded to SHUNIMPL.#236)
723      000839D8 [NONAME]
724               [NONAME] (forwarded to SHUNIMPL.#381)
725               [NONAME] (forwarded to SHUNIMPL.#74)
726               [NONAME] (forwarded to SHUNIMPL.#75)
731      00004570 [NONAME]
732      000930B0 [NONAME]
733      001A6D80 [NONAME]
740      0002C300 [NONAME]
744      0024A83C [NONAME]
745               [NONAME] (forwarded to SHUNIMPL.#382)
748      002997D4 [NONAME]
749               [NONAME] (forwarded to SHUNIMPL.#76)
751      0023616C [NONAME]
752      0025DA98 [NONAME]
753      00013230 [NONAME]
754      002993F0 [NONAME]
755      002342C4 [NONAME]
756               [NONAME] (forwarded to SHUNIMPL.#77)
757      0008C810 [NONAME]
758      0028F3B8 [NONAME]
759      0028F2CC [NONAME]
760      0026B658 [NONAME]
761      00269124 [NONAME]
762               [NONAME] (forwarded to SHUNIMPL.#383)
763      000B9DFC [NONAME]
764      00099478 [NONAME]
766               [NONAME] (forwarded to SHUNIMPL.#385)
767      0009EAB0 [NONAME]
777      0004F6C8 [NONAME]
778      000D8A8C [NONAME]
781      00262064 [NONAME]
786               [NONAME] (forwarded to SHUNIMPL.#237)
787      000A0374 [NONAME]
788      0027AEE4 [NONAME]
789      00146DB0 [NONAME]
790      0025B5C8 [NONAME]
791      00137EA8 [NONAME]
810      00293750 [NONAME]
811      00293158 [NONAME]
812      00400124 [NONAME]
813      004001B0 [NONAME]
814      0012C34C [NONAME]
815      0010F3D8 [NONAME]
816      00420B98 [NONAME]
817      00420AC0 [NONAME]
818      0010D0BC [NONAME]
819      000BBE38 [NONAME]
820               [NONAME] (forwarded to SHUNIMPL.#249)
821               [NONAME] (forwarded to SHUNIMPL.#250)
822               [NONAME] (forwarded to SHUNIMPL.#251)
823      00179710 [NONAME]
824      00128640 [NONAME]
825      0010F6A0 [NONAME]
826               [NONAME] (forwarded to SHUNIMPL.#252)
827               [NONAME] (forwarded to SHUNIMPL.#253)
828      002424E0 [NONAME]
829      0024272C [NONAME]
830      00130A10 [NONAME]
831      00238460 [NONAME]
832               [NONAME] (forwarded to SHUNIMPL.#387)
833      00083A80 [NONAME]
834               [NONAME] (forwarded to SHUNIMPL.#254)
835               [NONAME] (forwarded to SHUNIMPL.#255)
836               [NONAME] (forwarded to SHUNIMPL.#256)
837               [NONAME] (forwarded to SHUNIMPL.#257)
838               [NONAME] (forwarded to SHUNIMPL.#258)
839               [NONAME] (forwarded to SHUNIMPL.#259)
840      0025DDF8 [NONAME]
841               [NONAME] (forwarded to SHUNIMPL.#424)
842               [NONAME] (forwarded to SHUNIMPL.#425)
843               [NONAME] (forwarded to SHUNIMPL.#386)
844      00420C20 [NONAME]
845      00420CA0 [NONAME]
847      0010F750 [NONAME]
848      002635E4 [NONAME]
849      0012BC5C [NONAME]
850      00090810 [NONAME]
851      0014301C [NONAME]
852               [NONAME] (forwarded to SHUNIMPL.#391)
854               [NONAME] (forwarded to SHUNIMPL.#260)
856               [NONAME] (forwarded to SHUNIMPL.#423)
857               [NONAME] (forwarded to SHUNIMPL.#426)
858               [NONAME] (forwarded to SHUNIMPL.#392)
859      000E68D4 [NONAME]
860      00040FE8 [NONAME]
861               [NONAME] (forwarded to SHUNIMPL.#261)
862      0009E168 [NONAME]
863               [NONAME] (forwarded to SHUNIMPL.#262)
864      0019E490 [NONAME]
865      0019C600 [NONAME]
866      0006A928 [NONAME]
867               [NONAME] (forwarded to SHUNIMPL.#263)
868               [NONAME] (forwarded to SHUNIMPL.#264)
869               [NONAME] (forwarded to SHUNIMPL.#384)
870      00151DB0 [NONAME]
871      0018132C [NONAME]
872               [NONAME] (forwarded to SHUNIMPL.#265)
873      0019C0B0 [NONAME]
874      0016DC20 [NONAME]
875      0016DBC8 [NONAME]
876      0013DDC4 [NONAME]
877      002571FC [NONAME]
878      00127320 [NONAME]
880      001177F8 [NONAME]
881      000B6BA0 [NONAME]
882      000B6D40 [NONAME]
883      003FD4D4 [NONAME]
884      0024EAB0 [NONAME]
885      00001460 [NONAME]
886      002381EC [NONAME]
887      00267F20 [NONAME]
888      002996DC [NONAME]
889      00247810 [NONAME]
890      000965D0 [NONAME]
891      0000B108 [NONAME]
892      000049EC [NONAME]
893      00152898 [NONAME]
894      00107238 [NONAME]
895      0001CF60 [NONAME]
896      002474C0 [NONAME]
897      0014492C [NONAME]
898      0025C6F0 [NONAME]
899      00001224 [NONAME]
900      0017DFD8 [NONAME]
901      000FD60C [NONAME]
902      0006B614 [NONAME]
903      000E02D0 [NONAME]
******/